package com.admin.service;

import com.admin.domain.*;
import com.admin.req.declarereturn.ReturnReq;
import com.admin.req.score.ScoreReq;
import com.admin.vo.ResultVO;
import com.admin.vo.declareDetail.retrunback.ReturnModuleVO;
import com.admin.vo.declareDetail.score.ScoreListVO;

import java.util.List;

/**
 * 回退service
 *
 * @author yangzhongliang
 * @date 2022/05/16
 */
public interface DeclareReturnService {

    /**
     * 保存回退信息
     * @param userId
     * @param returnReq
     * @return
     */
    ResultVO save(Integer userId, ReturnReq returnReq, String userLevel);

    /**
     * 保存 退回信息 提交事务
     * @param declare
     * @param returnModules
     */
    void transactionSave(Declare declare, List<DeclareReturnModule> returnModules, DeclareLog declareLog);


    /**
     * 回退信息
     * @param declareId
     * @return
     */
    List<ReturnModuleVO> findModuleByDeclareId(Integer declareId, String moduleName, String userLevel);



}
